home *** CD-ROM | disk | FTP | other *** search
Wrap
AMOS Source Code | 1986-08-04 | 25.2 KB | 738 lines
Dim X1(14),Y1(14),X2(14),Y2(14) Dir$="Disk:" Default : Wait Vbl Cls 0 : Curs Off : Hide : Paper 0 : Cls 0 Pen 3 : Locate ,5 : Centre "L O A D I N G" Pen 6 : Locate ,10 : Centre "T H E" Pen 5 : Locate ,15 : Centre "L I T T L E" Pen 4 : Locate ,20 : Centre "I M P S " F$="font" Open In 1,F$+".abk.mfnt" L=Lof(1) : Close 1 Load F$+".abk" : Reserve As Work 11,L : Bload F$+".abk.mfnt",Start(11) Make Icon Mask : Bank Swap 2,10 : Extension_8_0016 0,0 : Extension_8_00A2 0 Load "sam.abk" : Load "cool_breeze.abk" : Load "bob.abk" : Load "bars.abk" : Load "doors.abk" : Cls 0 Screen Open 0,320,220,8,Lowres : Curs Off : Cls 0 : Hide : Paper 0 Locate ,15 : Centre "QUICK CREDITS" : Wait 100 Cls 0 : Extension_8_00A2 0 : Extension_8_0006 20,50,"MANY THANKS TO" Extension_8_0006 20,80,"ARRON FOTHERGILL " : Extension_8_0006 20,110,"FOR ALL HIS ADVICE" : Extension_8_0006 20,140,"AND PATIENCE !" : Wait 250 Cls 0 : Colour 1,$F0F : Extension_8_00A2 1 : Extension_8_0006 120,50,"JOIN" : Extension_8_0006 120,80,"THE" : Extension_8_0006 120,110,"AMOS" : Extension_8_0006 120,140,"CLUB" : Wait 200 Cls 0 : Extension_8_00A2 0 : Extension_8_0006 100,50,"FONTS" : Extension_8_00A2 1 : Extension_8_0006 70,100,"CREATED WITH" : Extension_8_00A2 2 : Extension_8_0006 110,150,"CTEXT" : Wait 250 Cls 0 : Extension_8_00A2 2 : Extension_8_0006 20,100,"NOW THATS QUICK!" : Wait 150 Screen Close 0 Screen Open 0,320,190,8,Lowres : Paper 0 : Curs Off : Cls 0 : Colour 4,$FF0 Paste Bob 220,16,1 : Paste Bob 30,16,5 : Paste Bob 220,56,1 : Paste Bob 30,56,5 Paste Bob 220,96,1 : Paste Bob 30,96,5 : Paste Bob 220,136,1 : Paste Bob 30,136,5 Pen 4 : Centre At(,0)+"THE" : Pen 2 : Centre At(,4)+"LITTLE" : Pen 4 : Centre At(,8)+"IMPS" Pen 2 : Centre At(,12)+"BY" : Pen 4 : Centre At(,16)+"GRAHAM" : Pen 2 : Centre At(,20)+"WOOD" Screen Open 1,320,190,8,Lowres : Curs Off : Cls 0 Wait 10 : Dual Playfield 0,1 Def Scroll 1,100,0 To 200,200,0,-1 : Def Scroll 2,70,0 To 200,196,0,1 For ROLL=1 To 450 Screen Copy 0,0,0,320,1 To 1,0,1 : Screen Copy 1,0,47,320,48 To 0,0,187 Screen 0 : Scroll 1 : Screen 1 : Scroll 2 Next ROLL Sam Play 6 Wait 100 Screen Close 0 : Screen Close 1 NEW: Screen Open 0,320,280,8,Lowres : Curs Off : Cls 0 : Paper 0 : Pen 4 Sam Play 3 : Sam Loop On For Y=0 To 360 Step 20 For X=0 To 360 Step 20 Plot 180,300 Draw 160,125 To Y,X T=Rnd(15) : Ink T Next X Next Y For L=0 To 28 Step 4 Pen 4 : Locate ,L : Centre "IMP ATTACK IMP ATTACK" Pen 3 : Locate ,L : Centre "HELP" Next Double Buffer D=0 AGAIN: Inc D : Colour 4,$FF X1=320 : Y1=20 : X2=-40 : Y2=90 : X3=320 : Y3=160 For S=1 To 80 Bob 1,X1,Y1,1 : Bob 2,X2,Y2,5 : Bob 3,X3,Y3,1 X1=X1-6 : X2=X2+6 : X3=X3-6 Wait Vbl Next S If D=2 Then Cls 0 : Screen Close 0 : Sam Loop Off : Wait 10 : Gosub GO X1=-40 : Y1=20 : X2=320 : Y2=90 : X3=-40 : Y3=160 For S=1 To 80 Bob 1,X1,Y1,5 : Bob 2,X2,Y2,1 : Bob 3,X3,Y3,5 X1=X1+6 : X2=X2-6 : X3=X3+6 : Wait Vbl Next S Goto AGAIN GO: Screen Open 0,320,380,8,Lowres : Curs Off : Show On : Cls 0 : Paper 0 : Change Mouse 17 Music 1 : Colour 4,$F : Colour 1,$F0 : Extension_8_00A2 1 Extension_8_0006 2,20,"THIS IS YOUR COMPUTER," Extension_8_0006 2,60,"THE THINK TANKS" Extension_8_0006 2,100,"HAVE BEEN DRAINED," Extension_8_0006 2,140,"CAN YOU HELP ? " Reserve Zone 1 : Set Zone 1,35,160 To 85,180 Paste Bob 35,160,7 : Paste Bob 150,160,6 While Mouse Key=0 : Wend X=Mouse Zone Cls 0 If X=1 Then Gosub YES Else Gosub NO YES: Play 1,68,15 : Play 2,61,15 : Hide On : Cls 0 : Paper 0 Colour 4,$F73 : Colour 1,$F00 : Extension_8_0006 20,40,"PRINT YOUR NAME" Extension_8_0006 20,70,"THEN PRESS RETURN" A$="" Repeat B$=Upper$(Inkey$) If B$>=" " A$=A$+B$ End If If B$=Chr$(8) A$=Left$(A$,Len(A$)-1) Cls 0,20,50 To 320,70 End If If B$<>"" : Extension_8_0006 25,100,A$ : End If Until B$=Chr$(13) Cls 0 Extension_8_00A2 2 : Show On Colour 4,$D7E Extension_8_0006 10,30,"THANK YOU " : Extension_8_0006 150,30,A$ Extension_8_0006 2,50,"YOU WILL NEED TO ANSWER " Extension_8_0006 2,70," THE ADDs" Extension_8_0006 2,90," THE TAKE AWAYs " Extension_8_0006 2,110," THE SHAREs" Extension_8_0006 2,130," AND FINALLY THE TIMEs " Extension_8_0006 2,150," IF YOU'RE SUCCESSFUL" Extension_8_0006 2,170,"THE TANKS WIIL BE FILLED " Extension_8_0006 2,190,"WOULD YOU LIKE A PRACTICE " Reserve Zone 1 : Set Zone 1,35,200 To 120,220 Paste Bob 35,195,7 : Paste Bob 150,195,6 While Mouse Key=0 : Wend X=Mouse Zone If X=1 Then Cls 0 : Gosub PRAC Else Gosub NP NP: Hide On Double Buffer Sam Play 6 For X=350 To -90 Step -6 Bob 1,X,100,1 Wait Vbl Next X T=0 : Y=110 : S=250 : G=250 : X=-10 : D=150 : M=6 : M1=-6 : B=0 Repeat Inc T K=0 Def Scroll 1,X,Y To D,G,0,M Sam Play 5 Repeat Inc K Scroll 1 Wait Vbl Until K=25 C=0 Def Scroll 2,X,B To D,S,0,M1 Sam Play 5 Repeat Inc C Scroll 2 Wait Vbl Until C=25 X=120 : Y=0 : D=320 : G=116 : M=-6 : M1=6 : B=110 : S=320 Until T=2 Cls 0 : Screen Close 0 GAME: Screen Open 0,320,250,8,Lowres Cls 0 : Extension_8_00A2 2 : Hide On Colour 4,$F0 Extension_8_0006 3,20,"GOOD NEWS," : Extension_8_0006 100,40,A$ Extension_8_0006 3,60,"YOU CAN USE" Extension_8_0006 3,80,"THE MAGIC KEYPAD" Extension_8_0006 3,100,"IT HAS A WISH BUTTON" Extension_8_0006 3,120,"IF YOU NEED HELP" Extension_8_0006 3,180,"PRESS MOUSE KEY" : While Mouse Key=0 : Wend : While Mouse Key<>0 : Wend Def Scroll 1,0,0 To 330,200,0,2 For SC=1 To 100 Scroll 1 Sam Play 8 Next SC Colour 4,$AEC Extension_8_0006 40,50,"GOOD LUCK" : Extension_8_0006 40,80,A$ : Wait 100 : Cls 0 Screen Close 0 Gosub A PA: Screen Open 0,320,250,8,Lowres Curs Off : Cls 0 : Pen 4 : Paper 0 : Change Mouse 1 : Show SCORE=10 : HA=0 For T=1 To 10 SR: A=Rnd(19)+1 : B=Rnd(19)+1 If A<B Then Goto SR Locate 16,10 : Print A; If A<10 Then Locate 17,10 : Print A; If B<10 Then Locate 17,11 : Print B; : Goto FR Locate 16,11 : Print B; FR: Locate 19,11 : Print "+" Locate 15,12 : Print "------" Locate 15,14 : Print "------" Ink 5 Gosub CALCONE If Z=12 Then Goto ANSONE If Z=14 Then Gosub HELPA ANSONE: If M=A+B Then Gosub GOOD : Else Gosub BAD Next T Locate 3,10 : Print "YOU SCORED";SCORE;" OUT OF 10" : Wait 150 Locate 3,12 : Print " YOU NEEDED HELP WITH ";HA : Wait 150 DIF=SCORE-HA : Locate 3,14 : Print "YOUR TRUE SCORE ";DIF;" OUT OF 10" : Wait 150 Screen Close 0 : Gosub PRAC HELPA: Locate 16,13 : Print A+B M=A+B : Inc HA Return A: Music 1 Screen Open 0,320,250,8,Lowres Curs Off : Cls 0 : Pen 4 : Paper 0 : Show WSC=Rnd(2)+1 : MOVE=10 : SCORE=0 : RED=1 : RF=1 : Change Mouse 23 For T=1 To 10 FACE=5 For S=1 To MOVE Paste Bob FACE,15,15 FACE=FACE+28 Next S S: Pen 4 : A=Rnd(19)+1 : B=Rnd(19)+1 If A<B Then Goto S Locate 16,10 : Print A; If A<10 Then Locate 17,10 : Print A; If B<10 Then Locate 17,11 : Print B; : Goto P Locate 16,11 : Print B; P: Locate 19,11 : Print "+" Locate 15,12 : Print "------" Locate 15,14 : Print "------" Ink 5 Gosub CALC If Z=12 Then Goto ANS If Z=14 Then Gosub WISH If WSC=0 Then Gosub NOSCORE If SKIP=1 Then Goto P Locate 16,13 : Print " " : PL=10 : COV=10 For SPOT=1 To A : Paste Bob PL,50,16 : PL=PL+15 : Wait 5 : Next SPOT For ANSPOT=1 To B : Paste Bob COV,60,16 : COV=COV+15 : Wait 5 : Next ANSPOT Pen 4 Locate ,24 : Centre "COUNT ALL THE DOTS" Locate ,26 : Centre "TO FIND THE ANSWER" Paste Bob 110,118,17 : Dec WSC : Gosub CALC ANS: If M=A+B Then Gosub RIGHT : Else Gosub WRONG If SCORE=10 Then Gosub REWARD Next T Screen Close 0 Gosub GATE PB: Screen Open 0,320,280,8,Lowres Curs Off : Cls 0 : Paper 0 : Colour 4,$F : Change Mouse 1 SCORE=10 : HB=0 For T=1 To 10 PJ: Pen 6 : A=Rnd(19)+1 : B=Rnd(19)+1 If A<B Then Goto PJ Locate 16,10 : Print A; If A<10 Then Locate 17,10 : Print A; If B<10 Then Locate 17,11 : Print B; : Goto PK Locate 16,11 : Print B; PK: Locate 19,11 : Print "-" Locate 15,12 : Print "------" Locate 15,14 : Print "------" Ink 6 Gosub CALCONE If Z=12 Then Goto ANSWONE If Z=14 Then Gosub HELPB ANSWONE: If M=A-B Then Gosub GOOD : Else Gosub BAD Next T Locate 3,10 : Print "YOU SCORED";SCORE;" OUT OF 10" : Wait 150 Locate 3,12 : Print " YOU NEEDED HELP WITH ";HB : Wait 150 DIF=SCORE-HB : Locate 3,14 : Print "YOUR TRUE SCORE ";DIF;" OUT OF 10" : Wait 150 Screen Close 0 : Gosub PRAC HELPB: Locate 16,13 : Print A-B M=A-B : Inc HB Return B: SKIP=0 Screen Open 0,320,280,8,Lowres Show On : Change Mouse 23 Curs Off : Cls 0 : Paper 0 : Colour 4,$F MOVE=10 : SCORE=0 : WSC=Rnd(2)+1 : BLUE=1 : RF=0 : BF=1 For T=1 To 10 FACE=5 For S=1 To MOVE Paste Bob FACE,15,15 FACE=FACE+28 Next S J: Pen 6 : A=Rnd(19)+1 : B=Rnd(19)+1 If A<B Then Goto J Locate 16,10 : Print A; If A<10 Then Locate 17,10 : Print A; If B<10 Then Locate 17,11 : Print B; : Goto K Locate 16,11 : Print B; K: Locate 19,11 : Print "-" Locate 15,12 : Print "------" Locate 15,14 : Print "------" Ink 6 Gosub CALC If Z=12 Then Goto ANSW If Z=14 Then Gosub WISH If WSC=0 Then Gosub NOSCORE If SKIP=1 Then Goto K Locate 16,13 : Print " " : COV=10 : PL=10 For SPOT=1 To A : Paste Bob PL,60,16 : PL=PL+15 : Wait 5 : Next SPOT For CROSS=1 To B : Paste Bob COV,60,14 : COV=COV+15 : Wait 5 : Next CROSS Pen 4 Locate 7,26 : Centre "HOW MANY DOTS DO NOT" Locate 7,28 : Centre "HAVE CROSSES?,COUNT THEM" Locate 7,30 : Centre "TO FIND THE ANSWER" Paste Bob 110,118,17 : Dec WSC : Gosub CALC ANSW: If M=A-B Then Gosub RIGHT : Else Gosub WRONG If SCORE=10 Then Gosub REWARD Next T Screen Close 0 Gosub GATE PC: Screen Open 0,320,280,8,Lowres : Change Mouse 1 Curs Off : Cls 0 : Paper 0 : Colour 4,$F0 SCORE=10 : HC=0 For T=1 To 10 A=Rnd(5)+1 : B=Rnd(5)+1 C=A*B Ink 4 : Draw 132,112 To 160,112 : Draw 132,112 To 132,128 PU: Pen 4 : Locate 14,15 : Print A : Locate 17,15 : Print C Ink 14 Gosub CALCONE If Z=12 Then Goto ANSWEONE If Z=14 Then Gosub HELPC Locate 15,10 : Print " " ANSWEONE: If M=C/A Then Gosub GOOD : Else Gosub BAD Next T Locate 3,10 : Print "YOU SCORED";SCORE;" OUT OF 10" : Wait 150 Locate 3,12 : Print " YOU NEEDED HELP WITH ";HC : Wait 150 DIF=SCORE-HC : Locate 3,14 : Print "YOUR TRUE SCORE ";DIF;" OUT OF 10" : Wait 150 Screen Close 0 : Gosub PRAC HELPC: Locate 16,13 : Print C/A M=C/A : Inc HC Return C: SKIP=0 : Show On : Change Mouse 23 Screen Open 0,320,280,8,Lowres Curs Off : Cls 0 : Paper 0 : Colour 4,$F0 COVER=1 : MOVE=10 : SCORE=0 : WSC=Rnd(2)+1 : GREEN=1 : BF=0 : GF=1 For T=1 To 10 FACE=5 For S=1 To MOVE Paste Bob FACE,15,15 FACE=FACE+28 Next S A=Rnd(5)+1 : B=Rnd(5)+1 C=A*B Ink 4 : Draw 132,112 To 160,112 : Draw 132,112 To 132,128 U: Pen 4 : Locate 14,15 : Print A : Locate 17,15 : Print C Ink 14 Gosub CALC If Z=12 Then Goto ANSWE If Z=14 Then COVER=1 : Gosub WISH If WSC=0 Then COVER=1 : Gosub NOSCORE If SKIP=1 Then Goto U Locate 15,10 : Print " " OX=50 : MB=40 For E=1 To B LO=10 : OX=OX+15 : MB=MB+15 For ROW=1 To A : Paste Bob LO,MB,16 : LO=LO+15 : Wait 5 : Next ROW Ink 4 : Box 10,OX To LO,MB Wait 10 Next E Pen 4 Locate 10,26 : Centre "COUNT THE BOXES" Locate 10,28 : Centre "TO FIND THE ANSWER" Paste Bob 110,125,17 : Dec WSC : Gosub CALC ANSWE: If M=C/A Then Gosub RIGHT : Else Gosub WRONG If SCORE=10 Then Gosub REWARD Next T Screen Close 0 Gosub GATE PD: Screen Open 0,320,280,8,Lowres : Change Mouse 1 Curs Off : Cls 0 : Paper 0 : Colour 4,$FF0 SCORE=10 : HD=0 For T=1 To 10 PICKO: A=Rnd(12) : B=Rnd(11)+1 : Pen 7 If A<B Then Goto PICKO Pen 4 : Locate 16,10 : Print A; If A<10 Then Locate 17,10 : Print A; If B<10 Then Locate 17,11 : Print B; : Goto PL Locate 16,11 : Print B; PL: Ink 4 : Locate 19,11 : Print "x" Locate 15,12 : Print "------" Locate 15,14 : Print "------" Ink 4 Gosub CALCONE If Z=12 Then Goto ANSWERONE If Z=14 Then Gosub HELPD Pen 4 : S=7 : G=1 ANSWERONE: If M=A*B Then Gosub GOOD : Else Gosub BAD Next T Locate 3,10 : Print "YOU SCORED";SCORE;" OUT OF 10" : Wait 150 Locate 3,12 : Print " YOU NEEDED HELP WITH ";HD : Wait 150 DIF=SCORE-HD : Locate 3,14 : Print "YOUR TRUE SCORE ";DIF;" OUT OF 10" : Wait 150 Screen Close 0 : Gosub PRAC HELPD: Locate 16,13 : Print A*B M=A*B : Inc HD Return D: COVER=0 : SKIP=0 : Screen Open 0,320,280,8,Lowres : Show On : Change Mouse 23 Curs Off : Cls 0 : Paper 0 : Colour 4,$FF0 MOVE=10 : SCORE=0 : WSC=Rnd(2)+1 : YELLOW=1 : GF=0 : YF=1 For T=1 To 10 FACE=5 For S=1 To MOVE Paste Bob FACE,15,15 FACE=FACE+28 Next S PICK: A=Rnd(12) : B=Rnd(11)+1 : Pen 7 If A<B Then Goto PICK Pen 4 : Locate 16,10 : Print A; If A<10 Then Locate 17,10 : Print A; If B<10 Then Locate 17,11 : Print B; : Goto L Locate 16,11 : Print B; L: Ink 4 : Locate 19,11 : Print "x" Locate 15,12 : Print "------" Locate 15,14 : Print "------" Ink 4 Gosub CALC If Z=12 Then Goto ANSWER If Z=14 Then Gosub WISH If WSC=0 Then Gosub NOSCORE If SKIP=1 Then Goto L Locate 16,13 : Print " " Pen 4 : S=7 : G=1 For J=0 To 12 Locate G,S : P=J*A Print J;" x";A;"=";P : Wait 10 If J=9 Then G=0 S=S+2 Next J Pen 4 Locate 15,26 : Print "LOOK AT THE TABLES" : Locate 15,28 : Print "TO FIND THE ANSWER" : Paste Bob 110,118,17 : Dec WSC : Gosub CALC ANSWER: If M=A*B Then Gosub RIGHT : Else Gosub WRONG If SCORE=10 Then Gosub REWARD Next T Screen Close 0 Gosub GATE PRAC: Screen Open 1,320,250,8,Lowres : Curs Off : Cls 0 : Show On : Paper 0 Locate ,2 : Centre "PICK THE ONE" : Locate ,4 : Centre "THAT YOU WANT TO PRACTICE" Reserve Zone 5 Z=1 For Y=50 To 200 Step 35 Set Zone Z,20,Y To 40,Y+20 Paste Bob 19,Y-2,12 Z=Z+1 Next Y Pen 4 : Locate 6,7 : Print "A D Ds" : Pen 6 : Locate 6,12 : Print "T A K E A W A Ys" Pen 5 : Locate 6,16 : Print "S H A R Es" : Colour 2,$FF0 : Pen 2 : Locate 6,20 : Print "T I M Es" Colour 1,$F0F : Pen 1 : Locate 6,25 : Print "R E A D Y T O F I L L T A N K S " F: Z=0 : While Z=0 While Mouse Key=0 : Wend Z=Mouse Zone : Wend Z=Mouse Zone If Z=1 Then Cls 0 : Screen Close 1 : Gosub PA If Z=2 Then Cls 0 : Screen Close 1 : Gosub PB If Z=3 Then Cls 0 : Screen Close 1 : Gosub PC If Z=4 Then Cls 0 : Screen Close 1 : Gosub PD If Z=5 Then Cls 0 : Screen Close 1 : Gosub GAME NOSCORE: Locate 16,12 : Print " " : Locate 16,12 : Print "-----" Locate 16,13 : Print " " : If COVER=1 Then Locate 16,12 : Print " " Sam Play 6 : For X=0 To 370 Step 4 : Bob 1,X,150,5 : Wait Vbl Next X : Bob Off 1 : Locate 4,19 : Print "NO WISHES LEFT" : SKIP=1 : Return WISH: Locate 16,13 : Print " " : Locate 16,12 : Print " " : Locate 16,12 : Print "-----" If COVER=1 Then Locate 16,12 : Print " " : BLANK=0 Z=220 : Q=165 : Z1=220 : Q1=165 : Z2=220 : Q2=165 : Z3=220 : Q3=165 : Z4=220 : Q4=165 : Z5=220 : Q5=165 DZ=1 : DQ=2 : DZ1=2 : DQ1=-3 : DZ2=3 : DQ2=1 : DZ3=3 : DQ3=3 : DZ4=3 : DQ4=2 : DZ5=5 : DQ5=1 For J=1 To 100 Bob 1,Z,Q,17 : Bob 2,Z1,Q1,17 : Bob 3,Z2,Q2,17 : Bob 4,Z3,Q3,17 : Bob 5,Z4,Q4,17 : Bob 6,Z5,Q5,17 Z=Z-DZ : Q=Q-DQ : Z1=Z1-DZ1 : Q1=Q1-DQ1 : Z2=Z2-DZ2 : Q2=Q2-DQ2 : Z3=Z3-DZ3 : Q3=Q3-DQ3 : Z4=Z4-DZ4 : Q4=Q4-DQ4 : Z5=Z5-DZ5 : DQ5=DQ5-DQ5 Wait 1 Sam Play 1 Next J For BOP=1 To 6 : Bob Off BOP : Next BOP Return CALCONE: Reserve Zone 14 Z=1 : BO=12 : M=0 For Y=0 To 3 : For X=0 To 2 Z=2+X+Y*3 Paste Bob 200+X*22,75+Y*22,BO YZONE[Z,200+X*22,75+Y*22,220+X*22,95+Y*22] Next X : Next Y MYZONE[14,210,165,260,185] : Paste Bob 203,165,11 NUMBER: Extension_8_00A2 0 : While Mouse Key=1 : Wend : Extension_8_0006 207,185,"Help" Extension_8_0006 208,95,"1" : Extension_8_0006 229,95,"2" : Extension_8_0006 251,95,"3" : Extension_8_0006 205,117,"4" : Extension_8_0006 228,117,"5" : Extension_8_0006 250,117,"6" : Extension_8_0006 206,139,"7" : Extension_8_0006 229,139,"8" : Extension_8_0006 250,139,"9" Extension_8_0006 206,161,"0" : Extension_8_0006 227,161,"E" : Extension_8_0006 249,161,"C" Reset Zone 11 : YZONE[1,200,141,220,161] Z=0 : While Z<>12 : While Mouse Key=0 : Wend Z=Mouse Zone : If Z>0 and Z<11 : M=10*M+Z-1 : End If Locate 16,13 : Print M If Z=12 Then Return If Z=13 : M=0 : Locate 16,13 : Print " " : End If If Z=14 Then Return While Mouse Key<>0 : Wend Z=0 : Wend Procedure YZONE[A,X1,Y1,X2,Y2] Shared X1(),Y1(),X2(),Y2() Set Zone A,X1,Y1 To X2,Y2 X1(A)=X1 : Y1(A)=Y1 : X2(A)=X2 : Y2(A)=Y2 End Proc CALC: Reserve Zone 14 : Z=1 : BO=12 : M=0 For Y=0 To 3 : For X=0 To 2 Z=2+X+Y*3 Paste Bob 200+X*22,75+Y*22,BO MYZONE[Z,200+X*22,75+Y*22,220+X*22,95+Y*22] Next X : Next Y MYZONE[14,210,165,260,185] : Paste Bob 203,165,11 NUMBERS: Extension_8_00A2 0 : While Mouse Key=1 : Wend Paste Bob X1(Z),Y1(Z),12 : Extension_8_0006 207,185,"wish" Extension_8_0006 208,95,"1" : Extension_8_0006 229,95,"2" : Extension_8_0006 251,95,"3" : Extension_8_0006 205,117,"4" : Extension_8_0006 228,117,"5" : Extension_8_0006 250,117,"6" : Extension_8_0006 206,139,"7" : Extension_8_0006 229,139,"8" : Extension_8_0006 250,139,"9" Extension_8_0006 206,161,"0" : Extension_8_0006 227,161,"E" : Extension_8_0006 249,161,"C" Reset Zone 11 : MYZONE[1,200,141,220,161] Z=0 : While Z<>12 : While Mouse Key=0 : Wend Z=Mouse Zone : If Z>0 and Z<11 : M=10*M+Z-1 : Paste Bob X1(Z),Y1(Z),18 : End If M$=Str$(M) : Locate 16,13 : Print M$ If Z=12 Then Paste Bob X1(Z),Y1(Z),18 : While Mouse Key=1 : Wend : Return If Z=13 : M=0 : BLANK=COVER : Paste Bob X1(Z),Y1(Z),18 : Locate 16,13 : Print " " : Locate 16,12 : Print " " : Locate 16,12 : Print "-----" : End If If BLANK=1 Then Locate 16,12 : Print " " : BLANK=0 If Z=14 Then Return If Z<>0 Then Goto NUMBERS While Mouse Key<>0 : Wend Z=0 : Wend Procedure MYZONE[A,X1,Y1,X2,Y2] Shared X1(),Y1(),X2(),Y2() Set Zone A,X1,Y1 To X2,Y2 X1(A)=X1 : Y1(A)=Y1 : X2(A)=X2 : Y2(A)=Y2 End Proc REWARD: Hide : Cls 0 : Extension_8_00A2 2 : Extension_8_0006 10,30,"WELL DONE" : Extension_8_0006 150,30,A$ : Extension_8_0006 50,50,"ALL TEN CORRECT" PL=30 : For SPOT=1 To 6 : Paste Bob PL,70,19 : PL=PL+45 : Play 1,64,15 : Next SPOT G=20 : For FA=1 To 4 : Paste Bob G,100,17 : G=G+70 : Next FA PL=30 : For SPOT=1 To 6 : Paste Bob PL,170,19 : PL=PL+45 : Play 1,64,15 : Next SPOT Wait 50 : Return RIGHT: Hide : Cls 0 : Screen Open 1,320,250,8,Lowres : Cls 0 : Extension_8_00A2 2 : Double Buffer If RED=1 Then Colour 4,$F00 If BLUE=1 Then Colour 4,$F If GREEN=1 Then Colour 4,$F0 If YELLOW=1 Then Colour 4,$FF0 X1=320 : Y1=30 : X2=320 : Y2=120 : Sam Play 6 For S=1 To 50 Bob 1,X1,Y1,1 : Bob 2,X2,Y2,1 X1=X1-4 : X2=X2-4 Wait Vbl Next S Sam Play 2 : Bob 5,25,60,13 Extension_8_0006 110,100,"CORRECT" : Bob Off 1 : Bob Off 2 Y1=Y1 : Y2=Y2 For SCARE=1 To 100 Bob 3,X1,Y1,2 : Bob 4,X2,Y2,4 : Y1=Y1-4 : Y2=Y2+4 : Wait Vbl : Next SCARE Bob Off 3 : Bob Off 4 : Bob Off 5 : Inc SCORE : Dec MOVE : Screen Close 1 : Show : Return GOOD: Locate ,2 : Centre "C O R R E C T" : Wait 100 : Cls 0 : Return BAD: Locate ,2 : Centre "W R O N G" : Wait 100 : Cls 0 : Dec SCORE : Return WRONG: Hide : Cls 0 : Screen Open 2,320,250,8,Lowres : Cls 0 Double Buffer If RED=1 Then Colour 4,$F00 If BLUE=1 Then Colour 4,$F If GREEN=1 Then Colour 4,$F0 If YELLOW=1 Then Colour 4,$FF0 X1=320 : Y1=30 : X2=320 : Y2=120 : Sam Play 6 : Sam Loop On For S=1 To 100 Bob 1,X1,Y1,1 : Bob 2,X2,Y2,1 X1=X1-4 : X2=X2-4 Wait Vbl If S=50 : Bob Off 1 : Bob Off 2 : Gosub SPIN : End If Next S Goto G SPIN: W=1 For T=1 To 6 W=W+1 Bob 3,X1,Y1,W : Bob 4,X2,Y2,W Wait 10 If W=4 Then W=1 Next T Sam Loop Off : Bob Off 3 : Bob Off 4 : Extension_8_00A2 0 : Extension_8_0006 110,75,"WRONG" : Extension_8_0006 78,115,"START AGAIN" Return G: SCORE=0 : T=0 : MOVE=10 : Cls 0 : Screen Close 2 : Show : Return NO: Hide : Cls 0 : Extension_8_0006 20,120,"THANKS FOR NOTHING" : Wait 100 : Cls 0 : Music Off : Gosub NEW GATE: Screen Open 0,320,256,8,Lowres Curs Off : Cls 0 : Show : Unpack 15 To 0 Reserve Zone 1 : Set Zone 1,135,170 To 150,200 Do M=Mouse Zone If M=1 Then Wait 25 : Fade 20 : Wait 270 : Screen Close 0 : Goto MOUSESHOOT Loop MOUSESHOOT: Screen Open 0,320,256,8,Lowres Double Buffer Curs Off : Cls 0 : Hide : Paper 0 If RED=1 Then Colour 4,$F00 If BLUE=1 Then Colour 4,$F If GREEN=1 Then Colour 4,$F0 If YELLOW=1 Then Colour 4,$FF0 N=10 : S=10 : Q=0 Locate 15,1 : Pen 4 : Print "10 TO GO" IMP: X1=320 : Y1=20 : X2=-40 : Y2=90 Do GX=X Screen(X Mouse) : GY=220 Bob 3,GX,GY,22 Wait Vbl Bob 1,X1,Y1,1 : Bob 2,X2,Y2,24 X1=X1-6 : X2=X2+6 If Bob Col(1) Then Bob Off 5 : STAR=0 : Sam Play 5 : Gosub HIT If Bob Col(2) Then Bob Off 5 : STAR=0 : Gosub MISS If Mouse Key=1 and STAR=0 Then Sam Play 2 : STAR=1 : Bob 5,DX,DY,21 : DX=GX+10 : DY=GY If STAR=1 Then Add DY,-8 : Bob 5,DX,DY,21 : If DY<GY-180 Then Bob Off 5 : STAR=0 If X1=-10 Then X1=320 If X2=350 Then X2=-40 Loop MISS: X1=X1 : Y1=Y1 : X2=X2 : Y2=Y2 Pen 4 : Locate 14,10 : Print "NOT THAT ONE" For M=1 To 50 Bob 1,X1,Y1,1 : Bob 2,X2,Y2,24 X1=X1-6 : X2=X2+6 Wait Vbl Next M Ink 0 : Bar 110,80 To 210,86 Goto IMP HIT: X3=X1+10 : Y3=Y1+20 : Dec N For D=1 To 100 Bob 1,X1,Y1,1 : Bob 2,X2,Y2,24 : Bob 6,X3,Y3,23 X1=X1-6 : X2=X2+6 : Y3=Y3+4 Wait Vbl Next D Dec S Q=Q+25 : Paste Bob Q,225,23 : Locate 15,1 : Pen 4 : Print N;" TO GO" : Wait 10 If S=0 Then Locate ,8 : Locate 15,1 : Print " " : Centre "ALL TEN COLLECTED" : Paste Bob 250,225,23 : Locate ,10 : Centre "PRESS MOUSE KEY TO CALL TANKS" : While Mouse Key=0 : Wend : Gosub RESULT Goto IMP RESULT: Unpack 14 To 0 : Wait 50 For Y=320 To 40 Step -2 Screen Display 0,,Y,,256 Wait Vbl If BF=1 Then Paste Bob 44,74,8 If GF=1 Then Paste Bob 44,74,8 : Paste Bob 117,74,9 If YF=1 Then Paste Bob 44,74,8 : Paste Bob 117,74,9 : Paste Bob 183,74,10 Next Y If RF=1 Then Gosub AING If BF=1 Then Gosub TAKE If GF=1 Then Gosub SHARE If YF=1 Then Gosub TIMES AING: Extension_8_0006 40,20,"FILLING ADDING TANK" : A=45 : B=182 For I=0 To 107 For J=0 To 16 Plot A+J,B Next J Wait 4 Dec B Bell Next I Wait 100 : Cls 1 Screen Close 0 Screen Open 0,320,250,8,Lowres Cls 0 : Colour 4,$F00 Extension_8_0006 20,50,"NICE ONE" : Extension_8_0006 140,50,A$ : Extension_8_0006 30,70,"YOU FILLED THE TANK" : Extension_8_0006 30,90,"AND SCARED OFF THE IMP" Extension_8_0006 20,110,"NOW CAN YOU FILL" : Extension_8_0006 40,130,"THE TAKE AWAY TANK ?" : Extension_8_0006 70,150,"PRESS MOUSE KEY" While Mouse Key=0 : Wend : While Mouse Key<>0 : Wend : Screen Close 0 : Gosub B TAKE: Extension_8_0006 40,20,"FILLING TAKE AWAY TANK" : Ink 10 : A=117 : B=182 For I=0 To 107 For J=0 To 16 Plot A+J,B Next J Wait 4 Dec B Bell Next I Wait 100 : Cls 1 Screen Close 0 Screen Open 0,320,250,8,Lowres Cls 0 : Colour 4,$F Extension_8_0006 20,50,"KEEP COOL" : Extension_8_0006 150,50,A$ : Extension_8_0006 30,70,"YOU FILLED THE TANK" : Extension_8_0006 30,90,"AND SCARED OFF THE IMP" Extension_8_0006 20,110,"NOW CAN YOU FILL" : Extension_8_0006 40,130,"THE SHARES TANK ?" : Extension_8_0006 70,150,"PRESS MOUSE KEY" While Mouse Key=0 : Wend : While Mouse Key<>0 : Wend : Screen Close 0 : Gosub C SHARE: Extension_8_0006 40,20,"FILLING SHARES TANK" : Ink 8 : A=183 : B=182 For I=0 To 107 For J=0 To 16 Plot A+J,B Next J Wait 4 Dec B Bell Next I Wait 100 : Cls 1 Screen Close 0 Screen Open 0,320,250,8,Lowres : Cls 0 : Colour 4,$F0 Extension_8_0006 20,50,"GREAT" : Extension_8_0006 120,50,A$ : Extension_8_0006 30,70,"YOU FILLED THE TANK" : Extension_8_0006 30,90,"AND SCARED OFF THE IMP" Extension_8_0006 20,110,"NOW CAN YOU FILL" : Extension_8_0006 40,130,"THE TIMES TANK ?" : Extension_8_0006 70,150,"PRESS MOUSE KEY" While Mouse Key=0 : Wend : While Mouse Key<>0 : Wend : Screen Close 0 : Gosub D TIMES: Extension_8_0006 40,20,"FILLING TIMES TANK" : Ink 5 : A=255 : B=182 For I=0 To 107 For J=0 To 16 Plot A+J,B Next J Wait 4 Dec B Bell Next I Wait 100 : Cls 1 Screen Close 0 Screen Open 0,320,250,8,Lowres : Cls 0 : Colour 4,$FF0 Extension_8_0006 20,50,"THAT'S IT" : Extension_8_0006 140,50,A$ : Extension_8_0006 30,70,"ALL TANKS FILLED" : Extension_8_0006 50,90,"TO TEST COMPUTER" Extension_8_0006 70,110,"PRESS MOUSE KEY" : While Mouse Key=0 : Wend : While Mouse Key<>0 : Wend : Screen Close 0 : Gosub FINISH FINISH: Screen Open 0,320,280,8,Lowres : Curs Off : Cls 0 : Paper 0 : Colour 7,$FF0 : Hide For W=1 To 3 : Pen 4 : C=A+B : A=Rnd(5000) : B=Rnd(5000) Locate 1,8 : Print A;" ADD ";B;" = ";C : Pen 6 : C=A-B : A=Rnd(5000) : B=Rnd(5000) Locate 1,10 : Print A;" TAKE AWAY ";B;" = ";C : Pen 5 : C=A*B : A=Rnd(5000) : B=Rnd(5000) Locate 1,12 : Print C;" SHARE ";B;"=";A : Pen 7 : C=A*B : A=Rnd(5000) : B=Rnd(5000) Locate 1,14 : Print A;" TIMES ";B;" = ";C Wait 50 : Shoot : Locate 10,16 : Pen 3 : Print "ALL CORRECT" : Wait 100 : Shoot : Cls 0 : Wait 20 Next For B=0 To 63 : Volume B : Bell 80 : Wait 5 : Next B Pen 2 : Locate ,4 : X=0 For C=1 To 5 : Paste Bob X,20,17 : Paste Bob X,180,19 : X=X+62 : Next Extension_8_00A2 2 : Extension_8_0006 20,110,"COMPUTER WORKING" : Extension_8_0006 40,145,"PRESS MOUSE KEY" : Extension_8_0006 20,180," FOR YOUR REWARD" While Mouse Key=0 : Wend : While Mouse Key<>0 : Wend : Cls O Curs Off : Hide : Cls 0 : Load Iff "cert",0 Locate ,10 : Paper 0 : Pen 1 Bank Swap 2,10 : Bank Swap 2,10 : Extension_8_00A2 1 : Extension_8_0006 90,93,A$ : Wait 600 : Music Off : Screen Close 0 : Gosub NEW